package com.achievement.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("biz_patent")
@EqualsAndHashCode(callSuper = false)
public class PatentEntity extends CommonEntity implements Serializable {

    private static final long serialVersionUID = 1440313039225878403L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 申请号
     */
    @Excel(name = "申请号")
    private String applyCode;
    /**
     * 申请日
     */
    @Excel(name = "申请日",dateFormat = "yyyy-MM-dd")
    private Date applyDate;
    /**
     * 授权公告日
     */
    @Excel(name = "授权公告日")
    private Date authorizeDate;
    /**
     * 专利名称
     */
    @Excel(name = "专利名称")
    private String name;

    /**
     * 所有发明人
     */
    @Excel(name = "发明人")
    private String inventorNames;
    /**
     *
     */
    private String lawStatus;
    /**
     *
     */
    private String agency;
    /**
     * 代理公司ID
     */
    private String agencyId;
    /**
     * 专利公开日
     */
    @Excel(name = "公开日")
    private Date openDate;
    /**
     * 专利授权公告号
     */
    @Excel(name = "授权公告号")
    private String authorizeCode;
    /**
     * 专利公开号
     */
    @Excel(name = "公开号")
    private String openCode;
    /**
     * 申请人
     */
    @Excel(name = "申请人")
    private String applyInfo;
    /**
     *
     */
    private String agent;
    /**
     * 专利类型Id
     */
    @Excel(name = "专利类型")
    private String typeId;
    /**
     *
     */
    private String numOfWeights;
    /**
     * IPC主分类号
     */
    @Excel(name = "IPC主分类号")
    private String patentIpc;
    /**
     *
     */
    private String unauthorizedReasons;
    /**
     *
     */
    private String causesOfFailure;
    /**
     *
     */
    private String statusDate;
    /**
     * 所属单位ID
     */
    @Excel(name = "所属单位")
    private String unitId;
    /**
     * 专利范围
     */
    @Excel(name = "专利范围")
    private String scopeId;
    /**
     * 专利状态
     */
    @Excel(name = "专利状态")
    private String stateId;
    /**
     * 学校署名
     */
    @Excel(name = "学校署名",readConverterExp ="0=第一单位,1=非第一单位" )
    private String schoolSign;
    /**
     * 专利权人
     */
    private String patentee;
    /**
     * 专利权状态
     */
    private String invalidFlag;
    /**
     *
     */
    private String reductionRate;
    /**
     * 合作类型
     */
    @Excel(name = "合作类型")
    private String cooperationType;
    /**
     * 是否职务专利
     */
    @Excel(name = "是否职务专利",readConverterExp ="0=否,1=是")
    private String isDuty;
    /**
     * 是否PCT专利
     */
    @Excel(name = "是否PCT专利",readConverterExp ="0=否,1=是")
    private String isPct;
    /**
     * PCT专利名称
     */
    @Excel(name = "PCT专利名称")
    private String pctName;
    /**
     * PCT专利申请号
     */
    @Excel(name = "PCT专利申请号")
    private String pctCode;
    /**
     * PCT专利申请日期
     */
    @Excel(name = "PCT专利申请日期")
    private Date pctDate;
    /**
     * PCT专利优先权日
     */
    @Excel(name = "PCT专利优先权日")
    private Date priorityDate;
    /**
     * 进入国家
     */
    private String enterCountry;
    /**
     *
     */
    private String note;
    /**
     * 附件---代理信息
     */
    private String fileIds;
    /**
     * 第一作者ID
     */
    private String firstAuthorId;
    /**
     * 第一作者名称
     */
    private String firstAuthorName;
    /**
     * 第一作者职工号
     */
    private String firstAuthorAccount;
    /**
     * 第一作者职称
     */
    private String firstAuthorTitleId;
    /**
     * 第一作者性别
     */
    private String firstAuthorSexid;
    /**
     * 第一作者学历
     */
    private String firstAuthorEduLevelId;
    /**
     * 第一作者学位
     */
    private String firstAuthorEduDegreeId;
    /**
     * 作者数量
     */
    private Integer authorNumber;
    /**
     *
     */
    private String divisionId;
    /**
     * 审核状态
     */
    private String checkstatus;
    /**
     * 审核时间
     */
    private String checkdate;
    /**
     * 审核人名字
     */
    private String checker;
    /**
     * 是否代理
     */
    @Excel(name = "是否代理",readConverterExp ="0=否,1=是")
    private String isAgency;
    /**
     * 通讯发明人
     */
    @Excel(name = "通讯发明人")
    private String txAuthor;
    /**
     * 通讯发明人电话
     */
    @Excel(name = "通讯发明人电话")
    private String txAuthorTel;
    /**
     *
     */
    private String agencyStatus;
    /**
     * 联合申请知识产权协议书附件
     */
    private String joinFileId;
    /**
     * 专利证书附件
     */
    private String crednetialFileId;
    /**
     * 国家地区
     */
    @Excel(name = "国家地区")
    private String region;
    /**
     * 发明人Id集合
     */
    private String authorpids;
    /**
     * 发明人单位Id集合
     */
    private String authorunitids;
    /**
     *
     */
    private String completedatastatus;
    /**
     *
     */
    private String inventorMatchingState;
    /**
     * 代理公司名称
     */
    @Excel(name = "代理公司名称")
    private String agencyName;

    private String processInstanceId;
}
